iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 20
1
自我挑戰組

今年我想陪著 30 天系列 第 20

今年我想陪著 30 天之 20

  • 分享至 

  • xImage
  •  

1534. Count Good Triplets

Given an array of integers arr, and three integers a, b and c. You need to find the number of good triplets.
A triplet (arr[i], arr[j], arr[k]) is good if the following conditions are true:
0 <= i < j < k < arr.length
|arr[i] - arr[j]| <= a
|arr[j] - arr[k]| <= b
|arr[i] - arr[k]| <= c
Where |x| denotes the absolute value of x.
Return the number of good triplets.

  • Example 1:
    Input: arr = [3,0,1,1,9,7], a = 7, b = 2, c = 3
    Output: 4
    Explanation: There are 4 good triplets: [(3,0,1), (3,0,1), (3,1,1), (0,1,1)].

  • Example 2:
    InInput: arr = [1,1,2,2,3], a = 0, b = 0, c = 1
    Output: 0
    Explanation: No triplet satisfies all conditions.

var countGoodTriplets = function(arr, a, b, c) {
    let n=0
    for(let i=0; i<arr.length-2; i++) 
    {
      for(let j=i+1; j<arr.length-1; j++) 
      {
        if(Math.abs(arr[i] - arr[j]) > a) continue
        for(let k=j+1; k<arr.length; k++) 
        {
          if(Math.abs(arr[j] - arr[k]) > b) continue
          if(Math.abs(arr[i] - arr[k]) > c) continue
            n++
        }
      }
    }
  return n
};

上一篇
今年我想陪著 30 天之 19
下一篇
今年我想陪著 30 天之 21
系列文
今年我想陪著 30 天30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言